Speed up keyboard auto-repeat cursor motion under bidi redisplay.
authorEli Zaretskii <eliz@gnu.org>
Sat, 23 Jul 2011 07:42:56 +0000 (10:42 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sat, 23 Jul 2011 07:42:56 +0000 (10:42 +0300)
commit199bfe5167a6bb4fec5989fd0586eebdd5616311
tree066080574d62227c4e29cc9295bc4e45bf29e935
parentb8e14eaa474f1cda8d9a10c6ddba0b8c08a8e928
parent1b016ac5c567c65dae78ea7d0adec7bc284185b5
Speed up keyboard auto-repeat cursor motion under bidi redisplay.

 src/xdisp.c (compute_stop_pos_backwards): New function.
 (next_element_from_buffer): Call compute_stop_pos_backwards to
 find a suitable prev_stop when we find ourselves before
 base_level_stop.
 (reseat): Don't look for prev_stop, as that could mean a very long
 run.
 <cached_disp_pos, cached_disp_buffer, cached_disp_modiff>
 <cached_disp_overlay_modiff>: Cache for last found display string
 position.
 (compute_display_string_pos): Return the cached position if asked
 about the same buffer in the same area of character positions, and
 the buffer wasn't changed since the time the display string
 position was cached.
src/ChangeLog
src/xdisp.c